#include <bits/stdc++.h>

using namespace std;

const int N = 1e6 + 5;
const int M = 998244353;

// g[N]: 1e6以内所有数的约数个数, s维护前缀和
int dp[N], s;

void init()
{
    for (int i = 1; i < N; i++)
    {
        dp[i]++;
        for (int j = i * 2; j < N; j += i)
            dp[j]++;
    }

    dp[1] = s = 1;
    for (int i = 2; i < N; i++)
    {
        dp[i] = (dp[i] + s) % M;
        s = (s+ dp[i]) % M;
    }
}
int main()
{
    // #ifdef LOCAL
    //     freopen("in.txt", "r", stdin);
    //     freopen("out.txt", "w", stdout);
    // #endif
    init();
    int n;
    cin >> n;
    cout << dp[n] << endl;
    return 0;
}